#include "./XxxTimeSlice/XxxTimeSliceOffset.h"
#include "stm32f10x.h"



/********************************************systick中断服务函数********************************************/
void SysTick_Handler(void)
{
	XxxTimeSliceOffset_Produce();
}
/********************************************systick中断服务函数 End********************************************/



STR_XxxTimeSliceOffset m_timeSlice_1;
void Task_1(void)
{
	return;						/* 可以仿真打断点看进来的时间是否对应 或 自行添加打印语句 */
}
STR_XxxTimeSliceOffset m_timeSlice_2;
void Task_2(void)
{
	return;						/* 可以仿真打断点看进来的时间是否对应 或 自行添加打印语句 */
}
STR_XxxTimeSliceOffset m_timeSlice_3;
void Task_3(void)
{
	return;						/* 可以仿真打断点看进来的时间是否对应 或 自行添加打印语句 */
}
STR_XxxTimeSliceOffset m_timeSlice_4;
void Task_4(void)
{
	return;						/* 可以仿真打断点看进来的时间是否对应 或 自行添加打印语句 */
}
STR_XxxTimeSliceOffset m_timeSlice_5;
void Task_5(void)
{
	return;						/* 可以仿真打断点看进来的时间是否对应 或 自行添加打印语句 */
}


int main(void)
{
	SysTick_Config(SystemCoreClock/ 1000);							/* 1ms的Tick */
	
	/*注册任务*/
	XxxTimeSliceOffset_Register(&m_timeSlice_1, Task_1, 0, 0);		/* 0，即非定时任务(每次轮询都会执行) */
	XxxTimeSliceOffset_Register(&m_timeSlice_2, Task_2, 10, 5);		/* 10*1ms，即10ms运行一次 */
	XxxTimeSliceOffset_Register(&m_timeSlice_3, Task_3, 100, 50);	/* 100*1ms，即100ms运行一次 */
	XxxTimeSliceOffset_Register(&m_timeSlice_4, Task_4, 500, 250);	/* 500*1ms，即500ms运行一次 */
    XxxTimeSliceOffset_Register(&m_timeSlice_5, Task_5, 1000, 500);	/* 1000*1ms，即1s运行一次 */
	
    XxxTimeSliceOffset_Start();										/* 启动时间片轮询 */
}
